#include<stdio.h>
#include<stdlib.h>
#include<math.h>

void sort(int a[], int n, int (*cmp)());
int CmpAsc(int x, int y);
int CmpDec(int x, int y);
int CmpAbsAsc(int x, int y);
int main(void)
{
	int n,a[10],slt;
	scanf("%d",&n);
	for(int i=0;i<n;i++)
	{
		scanf("%d",&a[i]);
	}
	scanf("%d",&slt);
	
	switch(slt)
	{
		case 1:sort(a,n,CmpAsc);break;
		case 2:sort(a,n,CmpDec);break;
		case 3:sort(a,n,CmpAbsAsc);break;
		default:printf("Wrong input!\n");
	}
	
	for(int i=0;i<n;i++)
	{
		printf("%d ",a[i]);
	}
	
	return 0;
}
void sort(int a[], int n, int (*cmp)())
{
	int swap;
	for(int i=1;i<n;i++)
	{
		for(int j=0;j<n-i;j++)
		{
			if(cmp(a[j],a[j+1])==1)
			{
				swap=a[j];
				a[j]=a[j+1];
				a[j+1]=swap;
			}
		}
	}
}
int CmpAsc(int x, int y)
{
	if(x>y)
	{
		return 1;
	}
	return 0;
}
int CmpDec(int x, int y)
{
	if(x<y)
	{
		return 1;
	}
	return 0;
}
int CmpAbsAsc(int x, int y)
{
	if(abs(x)>abs(y))
	{
		return 1;
	}
	else if((abs(x)==abs(y))&&(x>y))
	{
		return 1;
	}
	return 0;
}
